Skip to content

[Accuracy diff No.112] Fix accuracy diff for paddle.nn.functional.conv1d API - #306

Closed
co63oc wants to merge 1 commit into
PFCCLab:mainfrom
co63oc:fix28
Closed

co63oc wants to merge 1 commit into
PFCCLab:mainfrom
co63oc:fix28

Conversation

@co63oc

@co63oc co63oc commented Jun 19, 2025 •

Copy link
Copy Markdown
Contributor

尝试测试没有问题,没有关联PR

配置report/ci_ce_cpu/error_config.txt
PaddleAPITest CPU测试为torch error, weight类型和输入类型不一致
image

配置report/ci_ce_cpu/20250529/5_accuracy/error_config.txt中测试通过
image

@paddle-bot

paddle-bot Bot commented Jun 19, 2025

Copy link
Copy Markdown

Thanks for your contribution!

@cangtianhuang

Copy link
Copy Markdown
Collaborator

@co63oc 如果是 torch error,可以尝试修改 tester/paddle_to_torch/rules.py 中的 Conv1dRule,手动将 input 和 weight 的类型对齐,使其支持精度测试😉~

@co63oc

co63oc commented Jun 22, 2025

Copy link
Copy Markdown
Contributor Author

@co63oc 如果是 torch error,可以尝试修改 tester/paddle_to_torch/rules.py 中的 Conv1dRule,手动将 input 和 weight 的类型对齐,使其支持精度测试😉~

尝试修改rules.py和accuracy.py,需要考虑paddle, torch都要转换类型,反向也要转换类型,改动较多

更改了测试用例中类型参数,测试可以通过,不确定这样是否可以
paddle.nn.functional.conv1d(Tensor([8, 400, 100],"float32"), Tensor([256, 100, 3],"float32"), bias=Tensor([256],"float32"), padding=1, stride=list[1,], dilation=list[1,], groups=4, data_format="NCL", )

python engine.py --accuracy=True --api_config='paddle.nn.functional.conv1d(Tensor([8, 400, 100],"float32"), Tensor([256, 100, 3],"float32"), bias=Tensor([256],"float32"), padding=1, stride=list[1,], dilation=list[1,], groups=4, data_format="NCL", )'

image

@cangtianhuang

Copy link
Copy Markdown
Collaborator

这个看上去是一个 amp 配置,测试时请添加 --test_amp=True

在 CPU 测试 --test_cpu=True 会报 paddle error,这是我们应该修复的:
image

@cangtianhuang

Copy link
Copy Markdown
Collaborator

@co63oc 如果是 torch error,可以尝试修改 tester/paddle_to_torch/rules.py 中的 Conv1dRule,手动将 input 和 weight 的类型对齐,使其支持精度测试😉~

尝试修改rules.py和accuracy.py,需要考虑paddle, torch都要转换类型,反向也要转换类型,改动较多

更改了测试用例中类型参数,测试可以通过,不确定这样是否可以 paddle.nn.functional.conv1d(Tensor([8, 400, 100],"float32"), Tensor([256, 100, 3],"float32"), bias=Tensor([256],"float32"), padding=1, stride=list[1,], dilation=list[1,], groups=4, data_format="NCL", )

python engine.py --accuracy=True --api_config='paddle.nn.functional.conv1d(Tensor([8, 400, 100],"float32"), Tensor([256, 100, 3],"float32"), bias=Tensor([256],"float32"), padding=1, stride=list[1,], dilation=list[1,], groups=4, data_format="NCL", )'

image

此配置 torch 能够通过,说明是有效配置,不用修改配置~

@co63oc

co63oc commented Jun 22, 2025

Copy link
Copy Markdown
Contributor Author

PaddlePaddle/Paddle#73535 已在paddle提交PR

@co63oc

co63oc commented Jun 24, 2025

Copy link
Copy Markdown
Contributor Author

PaddlePaddle/Paddle#73535 已合入,关闭当前PR

@co63oc co63oc closed this Jun 24, 2025
@co63oc
co63oc deleted the fix28 branch June 30, 2025 22:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants